package tom_io_nio.nio.buffer;

import java.nio.ByteBuffer;

public class BufferSlice {

    public static void main(String[] args){

        //创建10个字节的缓冲区
        ByteBuffer byteBuffer = ByteBuffer.allocate(10);

        //缓冲区中的0-9
        for(int i = 0;i<byteBuffer.capacity();i++){
            byteBuffer.put((byte) i);
        }

        //创建子缓冲区
        byteBuffer.position(3);
        byteBuffer.limit(7);

        //创建子缓冲区
        ByteBuffer slice = byteBuffer.slice();

        //改变子缓冲区的内容
        for(int i = 0;i < slice.capacity();i++){
            byte k = slice.get(i);
            k *= 10;
            slice.put(i,k);
        }

        byteBuffer.position(0);
        byteBuffer.limit(byteBuffer.capacity());

        while(byteBuffer.remaining() > 0){
            System.out.println(byteBuffer.get());
        }

    }
}
